Robotics 1.0
Lesson 11: Let's Explore - Building a Rover

Purpose: To help students build a simple rover using the CPX and Crickit, and control its movement using DC motors programmed in CircuitPython.

No. of Classes

1 class (Duration: 1 hour and 30 minutes; maximum of 4 students per group).

Materials Required
  • CPX (Circuit Playground Express) board

  • Crickit board

  • USB cable

  • Rover kit with acrylic chassis, DC motors and wheels

  • Rechargeable batteries

Prior Knowledge

Basic understanding of the Adafruit Circuit Playground Express (CPX) board

Familiarity with the Crickit board and its motor ports

Understanding how to upload and run CircuitPython code using the Mu Editor

Using a USB cable and battery pack to power hardware safely

Exercises

Exercise 1

Assemble the Rover using the chassis kit



  • Click here to view the video on the installation of the chassis, DC motors, and tyres.

  • Click here to view the explanation and connection diagram of DC motor



  • Exercise 2

    Testing the DC motors


  • Use the functions in this document to test the DC motors and its connection



  • Exercise 3

    Moving the Rover


    Use Button A on the CPX to start the rover moving forward and Button B to stop the rover by controlling the DC motors through the Crickit board.



    Click here to view the instructions and pseudocode

    Solutions



  • Click here to watch the solution video for Exercise 3

  • Click here to view the code for Exercise 3

  • Teacher’s Instructions
    1. Ask students to explain how they connected the two DC motors.
    2. Review how CircuitPython code controls motor movement.
    3. Discuss what happens when the code executes and how we are able to run the DC motors.
    4. Relate the project to real-life robots such as cars, toys, and Mars rovers.
    5. Guide students to think about forward and backward movement by changing motor directions.
    6. Explain how turning left or right is possible when one motor runs while the other stops or runs in the opposite direction.
    7. Explain how the direction of the DC motor is determined by the way we connect the motor to the drive in the crickit as well as the throttle value being positive or negative. Encourage students to experiment with connection wiring and the throttle values in the code
    8. Do you think a DC motor can be connected directly to the CPX and made to work?
    9. What are the two wires in a DC motor used for, and why doesn't a DC motor need a separate signal wire like a servo motor?
    10. Guide students to solder wires to the DC motor terminals carefully, explaining that soldering is required because DC motors usually do not have plug-in connectors. Watch this video